Source:SLASH'EM 0.0.7E7F2/wingem.h
Below is the full text to wingem.h from the source code of SLASH'EM 0.0.7E7F2. To link to a particular line, write [[SLASH'EM 0.0.7E7F2/wingem.h#line123]], for example. The latest source code for vanilla NetHack is at Source code. 1. /* SCCS Id: @(#)wingem.h 3.4 1999/12/10 */ 2. /* Copyright © Christian Bressler, 1999 */ 3. /* NetHack may be freely redistributed. See license for details. */ 4. 5. #ifndef WINGEM_H 6. #define WINGEM_H 7. 8. #define E extern 9. 10. /* menu structure */ 11. typedef struct Gmi{ 12. struct Gmi *Gmi_next; 13. int Gmi_glyph; 14. long Gmi_identifier; 15. char Gmi_accelerator, Gmi_groupacc; 16. int Gmi_attr; 17. char *Gmi_str; 18. long Gmi_count; 19. int Gmi_selected; 20. } Gem_menu_item; 21. 22. #define MAXWIN 20 /* maximum number of windows, cop-out */ 23. 24. extern struct window_procs Gem_procs; 25. 26. /* ### wingem1.c ### */ 27. #ifdef CLIPPING 28. E void NDECL(setclipped); 29. #endif 30. E void FDECL(docorner, (int, int)); 31. E void NDECL(end_glyphout); 32. E void FDECL(g_putch, (int)); 33. E void NDECL(win_Gem_init); 34. E int NDECL(mar_gem_init); 35. E char NDECL(mar_ask_class); 36. E char * NDECL(mar_ask_name); 37. E int FDECL(mar_create_window, (int)); 38. E void FDECL(mar_destroy_nhwindow, (int)); 39. E void FDECL(mar_print_glyph, (int, int, int, int)); 40. E void FDECL(mar_print_line, (int, int, int, char *)); 41. E void FDECL(mar_set_message, (char *, char *, char *)); 42. E Gem_menu_item *NDECL(mar_hol_inv); 43. E void FDECL(mar_set_menu_type,(int)); 44. E void NDECL(mar_reverse_menu); 45. E void FDECL(mar_set_menu_title, (const char *)); 46. E void NDECL(mar_set_accelerators); 47. E void FDECL(mar_add_menu, (winid, Gem_menu_item *)); 48. E void FDECL(mar_change_menu_2_text, (winid)); 49. E void FDECL(mar_add_message, (const char *)); 50. E void NDECL(mar_status_dirty); 51. E int FDECL(mar_hol_win_type, (int)); 52. E void NDECL(mar_clear_messagewin); 53. E void FDECL(mar_set_no_glyph, (int)); 54. E void NDECL(mar_map_curs_weiter); 55. 56. /* external declarations */ 57. E void FDECL(Gem_init_nhwindows, (int *, char **)); 58. E void NDECL(Gem_player_selection); 59. E void NDECL(Gem_askname); 60. E void NDECL(Gem_get_nh_event) ; 61. E void FDECL(Gem_exit_nhwindows, (const char *)); 62. E void FDECL(Gem_suspend_nhwindows, (const char *)); 63. E void NDECL(Gem_resume_nhwindows); 64. E winid FDECL(Gem_create_nhwindow, (int)); 65. E void FDECL(Gem_clear_nhwindow, (winid)); 66. E void FDECL(Gem_display_nhwindow, (winid, BOOLEAN_P)); 67. E void FDECL(Gem_dismiss_nhwindow, (winid)); 68. E void FDECL(Gem_destroy_nhwindow, (winid)); 69. E void FDECL(Gem_curs, (winid,int,int)); 70. E void FDECL(Gem_putstr, (winid, int, const char *)); 71. E void FDECL(Gem_display_file, (const char *, BOOLEAN_P)); 72. E void FDECL(Gem_start_menu, (winid)); 73. E void FDECL(Gem_add_menu, (winid,int,const ANY_P *, 74. CHAR_P,CHAR_P,int,const char *, BOOLEAN_P)); 75. E void FDECL(Gem_end_menu, (winid, const char *)); 76. E int FDECL(Gem_select_menu, (winid, int, MENU_ITEM_P **)); 77. E char FDECL(Gem_message_menu, (CHAR_P,int,const char *)); 78. E void NDECL(Gem_update_inventory); 79. E void NDECL(Gem_mark_synch); 80. E void NDECL(Gem_wait_synch); 81. #ifdef CLIPPING 82. E void FDECL(Gem_cliparound, (int, int)); 83. #endif 84. #ifdef POSITIONBAR 85. E void FDECL(Gem_update_positionbar, (char *)); 86. #endif 87. E void FDECL(Gem_print_glyph, (winid,XCHAR_P,XCHAR_P,int)); 88. E void FDECL(Gem_raw_print, (const char *)); 89. E void FDECL(Gem_raw_print_bold, (const char *)); 90. E int NDECL(Gem_nhgetch); 91. E int FDECL(Gem_nh_poskey, (int *, int *, int *)); 92. E void NDECL(Gem_nhbell); 93. E int NDECL(Gem_doprev_message); 94. E char FDECL(Gem_yn_function, (const char *, const char *, CHAR_P)); 95. E void FDECL(Gem_getlin, (const char *,char *)); 96. E int NDECL(Gem_get_ext_cmd); 97. E void FDECL(Gem_number_pad, (int)); 98. E void NDECL(Gem_delay_output); 99. #ifdef CHANGE_COLOR 100. E void FDECL(Gem_change_color,(int color,long rgb,int reverse)); 101. E char * NDECL(Gem_get_color_string); 102. #endif 103. 104. /* other defs that really should go away (they're tty specific) */ 105. E void NDECL(Gem_start_screen); 106. E void NDECL(Gem_end_screen); 107. 108. E void FDECL(genl_outrip, (winid,int)); 109. 110. #undef E 111. 112. #endif /* WINGEM_H */ wingem.h